Semabio 2024
IB/UnB
Estrutura:
Cabeçalho: YAML
Texto: Markdown
Código: chunk e inline
Curso-R, Livro, cap. 13.8; Curso Visualização
R4DS O livro começa com gráficos!
- DataViz, para os íntimos
Muito importante já na parte de exploração dos dados
Ajudam ao cérebro a dar sentido em todas aquelas informações
Ajuda a levantar hipóteses
Importante na apresentação final dos resultados
Mas onde está o carregamento desse pacote no nosso software?
Uma forma mais rápida de visualizar (poucas linhas de código)
Não vamos focar, no momento, em deixar os gráficos pefeitos.
Adivinhem: o ggplot faz as duas coisas!
Utiliza a Gramática dos gráficos (daí o gg de ggplot): você precisa de atributos estéticos (cor, tamanho…) e atributos geométricos (pontos, linhas, colunas…).
São utilizadas camadas: Sobreposição de elementos visuais.
iris_media_area %>%
ggplot(aes(x=Species, y=area_media)) +
geom_col(fill="#9c9ff7",
color="#684dcf")+
geom_errorbar(aes(ymin = area_media-area_dp,
ymax = area_media+area_dp),
width = 0.3,
color = "#684dcf")+
geom_text(aes(y = area_media+area_dp,
label = round(area_media,1) ),
hjust = -0.5)+
theme_classic(base_size = 15)+
labs(title = "Área média da Pétala ",
subtitle = "Comparação entre espécies",
caption = "Fonte: Dados iris",
x = "",
y = expression("Área média da pétala (cm"^2*")"))+
coord_flip()+
theme(axis.text.y = element_text(face = "italic"))As camadas são adicionadas com um “+”
DT (iterativos em html)
kable, kableExtra (mais “LateX friendly”)
Gosto de pensar que também funciona como “camadas”.
Species | area_media | area_dp |
|---|---|---|
setosa | 0.182800 | 0.09057729 |
versicolor | 2.860200 | 0.68420143 |
virginica | 4.963387 | 0.66677756 |
podemos usar a mesma lógica para as colunas
Mas com o negrito, e outras formatações internas podemos também trabalhar nas linhas.
j eram as colunas …
i são as linhas
flextable(iris_media_area) %>%
width(width=1) %>%
width (j=1, width=0.5) %>%
bold (part = "header") %>%
align(align="center", part="all") %>%
align(align="left", j=1, part="all") %>%
vline(j=1, border=fp_border(color = "purple",
style = "dotted",
width = 1) ) %>%
set_header_labels(
Species="Espécie") %>%
compose(
i = 1, j = c(2,3), part = "header",
value = c(as_paragraph(
"Área Média / cm",
as_sup("2")),
as_paragraph(
"Desvio Padrão / cm",
as_sup("2"))
)
) %>%
font(part = "all", fontname = "Verdana") %>%
bg(i = ~ area_dp/area_media >= 0.45, bg="yellow") %>%
colformat_double(decimal.mark = ",",
big.mark = ".",
digits = 2) %>%
colformat_int(big.mark = ".")Espécie | Área Média / cm2 | Desvio Padrão / cm2 |
|---|---|---|
setosa | 0,18 | 0,09 |
versicolor | 2,86 | 0,68 |
virginica | 4,96 | 0,67 |
iris_filt <- iris %>%
mutate(Species=as.character(Species)) %>%
filter(Species!="setosa")
iris_filt %>%
select(-Species) %>%
tbl_summary()| Characteristic | N = 1001 |
|---|---|
| Sepal.Length | 6.30 (5.80, 6.70) |
| Sepal.Width | 2.90 (2.70, 3.03) |
| Petal.Length | 4.90 (4.38, 5.53) |
| Petal.Width | 1.60 (1.30, 2.00) |
| 1 Median (IQR) | |
| Characteristic | versicolor, N = 501 | virginica, N = 501 |
|---|---|---|
| Sepal.Length | 5.90 (5.60, 6.30) | 6.50 (6.23, 6.90) |
| Sepal.Width | 2.80 (2.53, 3.00) | 3.00 (2.80, 3.18) |
| Petal.Length | 4.35 (4.00, 4.60) | 5.55 (5.10, 5.88) |
| Petal.Width | 1.30 (1.20, 1.50) | 2.00 (1.80, 2.30) |
| 1 Median (IQR) | ||
| Characteristic | versicolor, N = 501 | virginica, N = 501 |
|---|---|---|
| Sepal.Length | 5.94 (0.52) | 6.59 (0.64) |
| Sepal.Width | 2.77 (0.31) | 2.97 (0.32) |
| Petal.Length | 4.26 (0.47) | 5.55 (0.55) |
| Petal.Width | 1.33 (0.20) | 2.03 (0.27) |
| 1 Mean (SD) | ||
iris_filt %>%
tbl_summary(by= Species,
statistic = list(
all_continuous() ~ "{mean} ({sd})") ) %>%
add_p() %>%
bold_labels() %>%
italicize_levels() %>%
bold_p(t = 0.8)| Characteristic | versicolor, N = 501 | virginica, N = 501 | p-value2 |
|---|---|---|---|
| Sepal.Length | 5.94 (0.52) | 6.59 (0.64) | <0.001 |
| Sepal.Width | 2.77 (0.31) | 2.97 (0.32) | 0.005 |
| Petal.Length | 4.26 (0.47) | 5.55 (0.55) | <0.001 |
| Petal.Width | 1.33 (0.20) | 2.03 (0.27) | <0.001 |
| 1 Mean (SD) | |||
| 2 Wilcoxon rank sum test | |||
iris_filt %>%
tbl_summary(by= Species,
statistic = list(
all_continuous() ~ "{mean} ({sd})")) %>%
add_p(test= everything() ~"t.test") %>%
bold_labels() %>%
italicize_levels() %>%
bold_p(t = 0.8)| Characteristic | versicolor, N = 501 | virginica, N = 501 | p-value2 |
|---|---|---|---|
| Sepal.Length | 5.94 (0.52) | 6.59 (0.64) | <0.001 |
| Sepal.Width | 2.77 (0.31) | 2.97 (0.32) | 0.002 |
| Petal.Length | 4.26 (0.47) | 5.55 (0.55) | <0.001 |
| Petal.Width | 1.33 (0.20) | 2.03 (0.27) | <0.001 |
| 1 Mean (SD) | |||
| 2 Welch Two Sample t-test | |||